package com.yun.zf.common.app.domain;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 客户资源表
 * </p>
 *
 * @author cj
 * @since 2021-03-30
 */
@TableName("zf_customer")
@Data
public class ZfCustomer implements Serializable {

    private static final long serialVersionUID = 1L;

      @TableId(value = "id")
      @ApiModelProperty(value = "主键id")
      private Long id;

      /**
     * 省级区划代码
     */
      @NotNull(message = "省级代码不能为空")
      @ApiModelProperty(value = "省级代码")
      private Long provinceCode;

      /**
     * 城市编码
     */
      @NotNull(message = "城市编码不能为空")
      @ApiModelProperty(value = "城市编码")
      private Long cityCode;

      /**
     * 客户姓名
     */
      @NotBlank(message = "客户姓名不能为空")
      @ApiModelProperty(value = "客户姓名")
      private String name;

      /**
     * 手机号码
     */
      @NotBlank(message = "手机号码不能为空")
      @ApiModelProperty(value = "手机号码")
      private String phone;

      /**
     * 证件号码
     */
      @ApiModelProperty(value = "证件号码")
      private String certificateNo;

      /**
     * 证件类型
     */
      @ApiModelProperty(value = "证件类型")
      private Integer certificateType;


    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime ;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date modifiedTime = new Date();
    /**
     * 客户状态，sign 已签约，OFF已关闭，关闭需要填写理由，transfered已过户，unlook 未带看， looked 已带看
     */
    @ApiModelProperty(value = "客户状态")
    private String status;

    // 客户来源
    @ApiModelProperty(value = "客户来源")
    private String sourceType;

    private String email ;
    private String sex;
    private String birthday;
    private String citizenship;
}
